package example.plugins.visualization;

import example.plugins.automaton.Constants;
import example.plugins.automaton.ConwayState;
import framework.automaton.Mapping;
import framework.automaton.Visualization;
import framework.automaton.plugin.VisualizationPlugin;

/**
 * Example visualization implementation for the framework.
 * The ConwayAutomatonPlugin defines the automata for Conway's Game of Life,
 * so this visualization plugin defines the visualizations for the two
 * states (alive and dead).
 * @author May
 *
 */
public class ConwayVisualizationPlugin implements VisualizationPlugin{
	Mapping map = new Mapping();

	Visualization alive;
	Visualization dead;

	public void createVisualizations() {
		alive = new AliveVisualization(); 
		dead = new DeadVisualization();

		map.addMapping(new ConwayState(Constants.ALIVE), alive);
		map.addMapping(new ConwayState(Constants.DEAD), dead);
	}

	public Mapping getMappings() {
		return map;
	}
}